Vision system for facilitating the automated application of disinfectant to the teats of dairy livestock

ABSTRACT

A system includes a controller operable to access an image signal generated by a camera. The accessed image signal corresponds to one or more features of the rear of a dairy livestock. The controller is further operable to determine positions of each of the hind legs of the dairy livestock based on the accessed image signal. The controller is further operable to determine a position of an udder of the dairy livestock based on the accessed image signal and the determined positions of the hind legs of the dairy livestock. The controller is further operable to determine, based on the image signal and the determined position of the udder of the dairy livestock, a spray position from which a spray tool may apply disinfectant to the teats of the dairy livestock.

RELATED APPLICATIONS

This divisional application claims the benefit under 35 U.S.C. §121 of the priority of U.S. patent application Ser. No. 13/095,977, filed Apr. 28, 2011, entitled “Vision System for Facilitatiing the Automated Application of Disinfectant to the Teats of Dair Livestock, ”which claims priority from U.S. Provisional Application No. 61/378,871, filed Aug. 31, 2010, entitled “Automated System for Applying Disinfectant to the Teats of Dairy Livestock,” the entire disclosure of which is hereby incorporated by reference.

TECHNICAL FIELD

This invention relates generally to dairy farming and more particularly to a vision system for facilitating the automated application of disinfectant to the teats of dairy livestock.

BACKGROUND OF THE INVENTION

Over time, the size and complexity of dairy milking operations has increased. Accordingly, the need for efficient and scalable systems and methods that support dairy milking operations has also increased. Systems and methods supporting dairy milking operations, however, have proven inadequate in various respects.

SUMMARY OF THE INVENTION

According to embodiments of the present disclosure, disadvantages and problems associated with previous systems supporting dairy milking operations may be reduced or eliminated.

In certain embodiments, a system includes a controller operable to access an image signal generated by a camera. The accessed image signal corresponds to one or more features of the rear of a dairy livestock. The controller is further operable to determine positions of each of the hind legs of the dairy livestock based on the accessed image signal. The controller is further operable to determine a position of an udder of the dairy livestock based on the accessed image signal and the determined positions of the hind legs of the dairy livestock. The controller is further operable to determine, based on the image signal and the determined position of the udder of the dairy livestock, a spray position from which a spray tool may apply disinfectant to the teats of the dairy livestock.

Particular embodiments of the present disclosure may provide one or more technical advantages. For example, certain embodiments of the present disclosure may provide an automated system for applying disinfectant to the teats of dairy livestock. Additionally, certain embodiments of the present disclosure may minimize overspray, thereby reducing the volume of the disinfectant needed. By reducing the need for human labor and reducing the volume of disinfectant used, certain embodiments of the present disclosure may reduce the cost associated with applying disinfectant to the teats of dairy livestock in certain dairy milking operations. Furthermore, the use of the automated system of the present disclosure in conjunction with a rotary milking platform may increase the throughput of the milking platform, thereby increasing the overall milk production of the milking platform.

Certain embodiments of the present disclosure may include some, all, or none of the above advantages. One or more other technical advantages may be readily apparent to those skilled in the art from the figures, descriptions, and claims included herein.

BRIEF DESCRIPTION OF THE DRAWINGS

To provide a more complete understanding of the present invention and the features and advantages thereof, reference is made to the following description taken in conjunction with the accompanying drawings, in which:

FIGS. 1A-1B illustrate perspective views of an example automated system for applying disinfectant to the teats of a dairy livestock, according to certain embodiments of the present disclosure;

FIG. 2 illustrates the automated system for applying disinfectant to the teats of a dairy livestock depicted in FIG. 1 positioned adjacent to a rotary milking platform, according to certain embodiments of the present disclosure;

FIG. 3 illustrates an example snapshot of an image signal identifying located edges is depth corresponding to the edges of the hind legs of a dairy cow, according to certain embodiments of the present disclosure;

FIG. 4 illustrates an example spray position determined based on a tangent to the rear of the located udder a tangent to the bottom of the located udder, according to certain embodiments of the present disclosure; and

FIGS. 5A-5B illustrate an example method for applying disinfectant to the teats of a dairy livestock, according to certain embodiments of the present disclosure.

DETAILED DESCRIPTION OF THE DRAWINGS

FIGS. 1A-1B illustrate perspective views of an example automated system 100 for applying disinfectant to the teats of a dairy livestock, according to certain embodiments of the present disclosure. System 100 includes a track 102 and a carriage 104, carriage 104 being mounted on track 102 such that carriage 104 is able to translate laterally along track 102. System 100 further includes a robotic arm 106 coupled to carriage 104. Robotic arm 106 includes a first member 108 pivotally attached to carriage 104, a second member 110 pivotally attached to first member 108, and a spray tool member 112 pivotally attached to second member 110. System 100 further includes a controller 114 operable to control the movement of carriage 104 and robotic arm 106 such that at least a portion of robotic arm 106 may extend between the hind legs of a dairy livestock in order to apply disinfectant to the teats of the dairy livestock.

Although a particular implementation of system 100 is illustrated and primarily described, the present disclosure contemplates any suitable implementation of system 100, according to particular needs. Additionally, although the present disclosure contemplates system 100 facilitating the application of any suitable liquid to the teats of any suitable dairy livestock (e.g., cows, goats, sheep, water buffalo, etc.), the remainder of this description is detailed with respect to the application of disinfectant to the teats of dairy cows.

Track 102 may include any suitable combination of structure and materials facilitating the attachment of carriage 104 thereto such that carriage 104 may translate laterally along track 102. Carriage 104 may include any suitable combination of structure and materials forming a base for robotic arm 106 that may translate laterally along track 102. For example, track 102 may include one or more tubular track members 116 each corresponding to one or more rollers 118 of carriage 104. Rollers 118 of carriage 104 may roll along track members 116, permitting carriage 104 to translate laterally along track 102.

In certain embodiments, as illustrated in FIG. 2, system 100 may be positioned adjacent to a rotary milking platform 202 such that carriage 104 may move along track 102 tangent to a rotary milking platform 202. Movement of carriage 104 tangent to rotary milking platform 202 may permit robotic arm 106 to track the movement of a dairy cow 204 located in a milking stall 206 of the rotary milking platform 202. Accordingly, at least a portion of robotic arm 106 may remain extended between the hind legs of the dairy cow 204 (as discussed detail below) as the dairy cow 204 rotates through the area 208 of the rotary milking platform 202 located adjacent to system 100. Although system 100 is primarily described as being used in conjunction with milking stalls 206 of a rotary milking platform 202 throughout the remainder of this description, the present disclosure contemplates system 100 being used in conjunction with any suitable type of milking stall, according to particular needs.

Returning to FIGS. 1A-1B, robotic arm 106 may include a first member 108 pivotally attached to carriage 104 such that first member 108 may rotate about a point of attachment to carriage 104. Robotic arm 106 may additionally include a second member 110 pivotally attached to first member 108 such that second member 110 may rotate about a point of attachment to first member 108. Robotic arm 106 may additionally include a spray tool member 112 pivotally attached to second member 110 such that spray tool member 112 may rotate about a point of attachment to second member 110. Although members 108-112 of robotic arm 106 are depicted as having a particular structure, the present disclosure contemplates members 108-112 each having any suitable structure, according to particular needs.

In certain embodiments, robotic arm 106 may additionally include a spray tool 120 attached to spray tool member 112. Spray tool 120 may be operable to discharge an amount of disinfectant to the teats of a dairy cow. For example (as depicted in FIG. 1B), spray tool 120 may include a linear member 122 having a spray nozzle 124 located at either end. Linear member 122 may be operable to rotate about the point attachment to spray tool member 112 such that spray nozzles 124 may discharge the disinfectant in a substantially circular pattern. As a result, the width of spray tool member 112 (including spray tool 120) may be minimized as spray tool member 112 passes between the hind legs of a dairy cow (as described below) while having a spray coverage area wide enough to cover each of the teats of a dairy cow once the spray tool member 112 is positioned beneath the dairy cow.

In certain embodiments, system 100 may include a first actuator 126, a second actuator 128, a third actuator 130, and a fourth actuator 132. Actuators 126-132 may each be operable to extend and retract to cause movement of carriage 102 and/or robotic arm 106 (as described in detail below). For example, the extension/retraction of actuators 126-132 may be governed by an actuator drive mechanism 134. Actuator drive mechanism 134 may include a hydraulic pump, a pneumatic pump, or any other suitable drive mechanism operable to cause extension/retraction of actuators 126-132.

First actuator 126 may be attached to track 102 and carriage 104 such that extension/retraction of first actuator 126 causes movement of carriage 104 along track 102. Second actuator 128 may be attached to carriage 104 and first member 108 such that extension/retraction of second actuator 128 causes rotation of first member 108 about the point of attachment to carriage 104. Third actuator 130 may be attached to first member 108 and second member 110 such that extension/retraction of third actuator 130 causes rotation of second member 110 about the point of attachment to first member 108. Fourth actuator 132 may be attached to second member 110 and spray tool member 112 such that extension/retraction of fourth actuator 132 causes rotation of spray tool member 112 about the point of attachment to second member 110.

In certain embodiments, spray tool member 112 may include a vision system 136 housing a camera 138. Camera 138 may include any suitable camera operable to generate one or more image signals (e.g., image signal 146, described below) corresponding to the rear and/or underside of a dairy cow (e.g., a dairy cow located in a milking stall of an adjacent rotary milking platform). For example, camera 138 may be a three-dimensional camera operable to generate a three-dimensional video image signal corresponding to the rear of a dairy cow and, as robotic arm 106 moves between the hind legs of the dairy cow, a three-dimensional video image signal corresponding the underside of the dairy cow. Based on the image signal(s) generated by camera 138, controller 114 may determine a spray position at which spray tool 120 may be positioned in order to apply disinfectant to the teats of the dairy cow (as described in detail below).

Although camera 138 is described as being a three-dimensional camera throughout the remainder of this description, the present disclosure contemplates camera 138 as being any suitable camera (e.g., a two-dimensional camera), according to particular needs. Additionally, although the vision system 136 housing camera 138 is depicted and primarily described as being positioned on spray tool member 112, the present disclosure contemplates vision system 136 being positioned at any suitable location.

In certain embodiments, various components of system 100 (e.g., spray tool 120, actuators 126-132, and camera 138) may be communicatively coupled to controller 114 (e.g., via a network facilitating wireless or wireline communication). Controller 114 may control the position of robotic arm 106 (e.g., by controlling the extension/retraction of actuator 126-132) such that at least a portion of robotic arm 106 extends between the hind legs of a dairy cow in order to discharge an amount of disinfectant to the teats of the dairy cow.

Controller 114 may include one or more computer systems at one or more locations. Each computer system may include any appropriate input devices (such as a keypad, touch screen, mouse, or other device that can accept information), output devices, mass storage media, or other suitable components for receiving, processing, storing, and communicating data. Both the input devices and output devices may include fixed or removable storage media such as a magnetic computer disk, CD-ROM, or other suitable media to both receive input from and provide output to a user. Each computer system may include a personal computer, workstation, network computer, kiosk, wireless data port, personal data assistant (PDA), one or more processors within these or other devices, or any other suitable processing device. In short, controller 114 may include any suitable combination of software, firmware, and hardware.

Controller 114 may additionally include one or more processing modules 140. The processing modules 140 may each include one or more microprocessors, controllers, or any other suitable computing devices or resources and may work, either alone or with other components of system 100, to provide a portion or all of the functionality of system 100 described herein. Controller 114 may additionally include (or be communicatively coupled to via wireless or wireline communication) one or more memory modules 142. The memory modules 142 may each include any memory or database module and may take the form of volatile or non-volatile memory, including, without limitation, magnetic media, optical media, random access memory (RAM), read-only memory (ROM), removable media, or any other suitable local or remote memory component.

Controller 114 may additional include control logic 144. Control logic 144 may include any information, logic, and/or instructions stored and/or executed by controller 114 to (1) determine, based on an image signal generated by camera 138 (e.g., image signal 146, described below), a spray position from which spray tool member 120 may apply disinfectant to the teats of a dairy cow, and (2) control the movement of carriage 106 and/or robotic arm 106 such that spray tool member 120 may be positioned at or near the determined spray position.

In operation of an example embodiment of system 100 (an embodiment in which system 100 is positioned adjacent to a rotary milking platform having a milking stall in which a dairy cow is located), controller 114 may be operable to receive a trigger (e.g., from a proximity switch or any other suitable sensor associated with the rotary milking platform) indicating that a stall in which the dairy cow is located has entered an area adjacent to system 100 (e.g., area 208, described above). For example, system 100 may be located relative to a rotary milking platform (e.g., rotary milking platform 202), and disinfectant may be applied to the teats of the dairy cow after the dairy cow has been milked (i.e., after the milking cluster has been removed).

Because disinfectant may not need to be applied to the teats of the dairy cow if a milking cluster is attached, controller 114 may determine whether a milking cluster is attached. If controller 114 determines that a milking cluster is attached, no further action may be performed until a next dairy cow enters the area adjacent to system 100. If controller 114 determines that a milking cluster is not attached, controller 114 may initiate the disinfectant application process by communicating a signal to first actuator 126, the signal causing first actuator to extend such that carriage 102 translates laterally along track 104 in a direction corresponding to the direction of rotation of the rotary milking platform. In certain embodiments, controller 114 may also access a rotary encoder signal 144 generated by a rotary encoder of the rotary milking platform, the accessed rotary encoder signal 144 indicating the speed of rotation of rotary milking platform. Based on the rotary encoder signal 144, controller 114 may communicate a signal to first actuator 126 that causes first actuator 126 to extend at a rate that causes carriage 102 to translate laterally along track 104 at a rate corresponding to the rate of rotation of the rotary milking platform (such that robotic arm 106 may keep pace with the dairy cow located in the milking stall of the rotary milking platform).

Controller 114 may be further operable to access an image signal 146 generated by camera 138. As discussed above, image signal 146 may be a three-dimensional video image signal corresponding (at least initially) to the rear of the dairy cow. Based on the accessed image signal 146, controller 114 may determine positions of each of the hind legs of the dairy cow. For example, controller 114 may process image signal 146 to locate edges in depth, which may correspond to portions of the image signal where the distance from an object transitions from being relatively close to camera 138 (i.e., the hind legs of the dairy cow) to relatively far away from camera 138 (i.e., the area on wither side of the hind legs of the dairy cow). Because the hind legs of the dairy cow may be relatively close to camera 138 as compared to the space located between/on either side of the hind legs, the located edges in depth may correspond to the location of the inside and outside edges of the hind legs of the dairy cow. FIG. 3 illustrates an example snapshot 300 of a image signal 146 identifying located edges is depth 302 corresponding to the edges of the hind legs of a dairy cow.

Returning to FIG. 1, controller 114, having determined the positions of each of the hind legs of the dairy cow, may communicate signals to one or more of actuators 126-132, the communicated signals causing extension/retraction of actuators 126-132 such that at least a portion of robotic arm 106 (e.g., spray tool member 112) extends toward the space between the hind legs of the dairy cow (e.g., at a predetermined height relative to the milking stall in which the dairy cow is located). Because image signal 146 may comprise a three-dimensional video image (as described above), the image signal 146 may change in real time as camera 138 moves toward the dairy cow. Accordingly, the present disclosure contemplates that controller 114 may update, either continuously or at predetermined intervals, the determined leg positions as image signal 146 changes.

Controller 114 may be further operable to determine a position of the udder of the dairy cow. In certain embodiments, controller 114 may determine the position of the udder of the dairy cow based on the accessed image 146 signal and/or the determined positions of the hind legs of the dairy cow. For example, controller 114 may process image signal 146 (which may change as the camera 138 moves toward the dairy cow, as described above) in order to trace the located edges in depth corresponding to the inside of the hind legs of the dairy cow (as described above) upwardly until they intersect with the udder of the dairy cow. In certain embodiments, controller 114 may process image signal 146 to determine where the edges in depth transition from being substantially vertical, indicating the inside of the hind legs, to substantially horizontal, indicating the udder (as illustrated in FIG. 3 by the edges in depth 302 corresponding to the inner side of the hind legs of the dairy cow).

Controller 114 may be further operable to determine a spray position from which spray tool 120 may apply disinfectant to the teats of the dairy cow. In certain embodiments, controller 114 may determine the spray position based on image signal 146 and/or the determined position of the udder of the dairy cow. For example, controller 114 may process image signal 146 (which may change as the camera 138 moves toward the dairy cow, as described above) in order to determine the shape of the udder of the dairy cow. Based on the determined shape, controller 114 may determine (1) a tangent to the rear of the located udder, and (2) a tangent to the bottom of the located udder. The spray position may then be determined relative to the intersection of the two tangents (e.g., a predetermined distance below the intersection). FIG. 4 illustrates an example spray position 402 determined by controller 114 based on a tangent 404 a to the rear of the located udder a tangent 404 b to the bottom of the located udder.

Returning to FIG. 1, controller 114, having determined the spray position, may communicate additional signals to actuators 126-132, these additional signals causing extension/retraction of actuators 126-132 such that spray tool 120 is positioned substantially at or near the spray position. Once positioned, controller 114 may initiate the discharge of a disinfectant to the teats of the dairy cow. For example, in embodiments in which spray tool 120 comprises a linear member 122 having a spray nozzle 124 at either end, controller 114 may communicate a signal to a valve controlling the flow of fluid to nozzles 124, the signal causing opening of the valve. Fluid pressure may then cause the spray tool member 122 to rotate about the point of attachment to spray tool member 112, causing the discharge of disinfectant in a substantially circular pattern. Member 122 may be sized and the spray pattern of nozzles 124 may be adjusted such that the sprayed circular pattern of disinfectant substantially covers the four teats of the dairy cow. Once the disinfectant has been applied to the teats of the dairy cow, controller 114 may communicate additional signals to actuators 126-132, these additional signals causing extension/retraction of actuators 126-132 such that carriage 104 and robotic arm 106 returns to a default position.

Particular embodiments of system 100 may provide one or more technical advantages. For example, certain embodiments of system 100 may reduce or eliminate the need for human labor to apply the disinfectant to the teats of dairy cow. Additionally, certain embodiments of system 100 may minimize overspray, thereby minimizing the volume of the expensive disinfectant used. Accordingly, certain embodiments of the present disclosure may reduce the cost associated with certain dairy milking operations. Furthermore, the use of system 100 in conjunction with a rotary milking platform may increase the throughput of the milking platform, thereby increasing the overall milk production of the milking platform.

Although a particular implementation of system 100 is illustrated and primarily described, the present disclosure contemplates any suitable implementation of system 100, according to particular needs. Moreover, although the present invention has been described with several embodiments, diverse changes, substitutions, variations, alterations, and modifications may be suggested to one skilled in the art, and it is intended that the invention encompass all such changes, substitutions, variations, alterations, and modifications as fall within the spirit and scope of the appended claims.

FIGS. 5A-5B illustrate an example method 500 for applying disinfectant to the teats of a dairy livestock, according to certain embodiments of the present disclosure. The method begins at step 502. At step 504, controller 114 receives a trigger indicating that a stall in which a dairy cow is located (e.g., a stall 206 of a rotary milking platform 202 positioned adjacent to system 100, as illustrated in FIG. 2) has entered an area adjacent to system 100 (e.g., area 208, as illustrated in FIG. 2). For example, the trigger may be received from a proximity switch or any other suitable sensor associated with the rotary milking platform.

At step 506, controller 114 determines whether a milking cluster is attached. If controller 114 determines that a milking cluster is attached, the method returns to step 504. If controller 114 determines that a milking cluster is not attached, the method proceeds to step 508 where controller 114 accesses a rotary encoder signal 144 indicated the speed of rotation of rotary milking platform. At step 510, controller 114 communicates a signal to first actuator 126, the signal causing first actuator to extend such that carriage 102 translates laterally along track 104 in a direction corresponding to the direction of rotation of the rotary milking platform. Additionally, the signal communicated to first actuator 126 causes the fist actuator to extend at a rate (determined based on rotary encoder signal 144) that causes carriage 102 to translate laterally along track 104 at a rate corresponding to the rate of rotation of the rotary milking platform. As a result, robotic arm 106 may keep pace with a dairy cow located in a milking stall of the rotary milking platform.

At step 512, controller 114 accesses an image signal 146 generated by camera 138 (e.g., a three-dimensional video image signal corresponding, at least initially, to the rear of the dairy cow). At step 514, controller 114 determines positions of each of the hind legs of the dairy cow. For example, controller 114 may process image signal 146 to locate edges in depth, which may correspond to portions of the image signal where the distance from an object transitions from being relatively close to camera 138 (i.e., the hind legs of the dairy cow) to relatively far away from camera 138 (i.e., the area on wither side of the hind legs of the dairy cow). At step 516, controller 114 communicates signals to one or more of actuators 126-132, the communicated signals causing extension/retraction of actuators 126-132 such that at least a portion of robotic arm 106 (e.g., spray tool member 112) extends toward the space between the hind legs of the dairy cow (e.g., at a predetermined height relative to the milking stall in which the dairy cow is located).

At step 518, controller 114 determines a position of the udder of the dairy cow. In certain embodiments, controller 114 determines the position of the udder of the dairy cow based on the accessed image 146 signal and/or the determined positions of the hind legs of the dairy cow. For example, controller 114 may process image signal 146 (which may change as the camera 138 moves toward the dairy cow, as described above) in order to trace the located edges in depth corresponding to the inside of the hind legs of the dairy cow (as described above) upwardly until they intersect with the udder of the dairy cow.

At step 520, controller 114 determines a spray position from which spray tool 120 may apply disinfectant to the teats of the dairy cow. For example, controller 114 may process image signal 146 (which may change as the camera 138 moves toward the dairy cow, as described above) in order to determine the shape of the udder of the dairy cow. Based on the determined shape, controller 114 may determine (1) a tangent to the rear of the located udder, and (2) a tangent to the bottom of the located udder. The spray position may then be determined relative to the intersection of the two tangents (e.g., a predetermined distance below the intersection).

At step 522, controller 114 communicates additional signals to actuators 126-132, the additional signals causing extension/retraction of actuators 126-132 such that spray tool 120 is positioned substantially at or near the spray position. Once positioned, controller 114 may initiate the discharge of a disinfectant to the teats of the dairy cow at step 524. Once the disinfectant has been applied to the teats of the dairy cow, controller 114 may, at step 526, communicate additional signals to actuators 126-132, these additional signals causing extension/retraction of actuators 126-132 such that carriage 104 and robotic arm 106 returns to a default position. The method then either returns to step 504 (if there are additional dairy cows to which disinfectant is to be applied) or ends at step 528 (if there are no additional dairy cows to which disinfectant is to be applied).

Although the steps of method 500 have been described as being performed in a particular order, the present disclosure contemplates that the steps of method 500 may be performed in any suitable order, according to particular needs.

Although the present disclosure has been described with several embodiments, diverse changes, substitutions, variations, alterations, and modifications may be suggested to one skilled in the art, and it is intended that the disclosure encompass all such changes, substitutions, variations, alterations, and modifications as fall within the spirit and scope of the appended claims. 

What is claimed is:
 1. A system, comprising: a controller operable to; access an image signal generated by a camera, the image signal corresponding to one or more features of a dairy livestock; determine, based on the image signal, positions of each of the hind legs of the dairy livestock; and determine, based on the image signal and the determined positions of the hind legs of the dairy livestock, a position of an udder of the dairy livestock; and a robotic arm communicatively coupled to the controller and operable to extend between the hind legs of the dairy livestock based at least in part upon the determined position of the udder of the dairy livestock; wherein: the controller determines, based at least in part upon the determined position of the udder of the dairy livestock, a spray position from which a spray tool may apply disinfectant to the teats of the dairy livestock; and the controller determines the spray position by processing the accessed image signal to determine a tangent to the rear of the udder and a tangent to the bottom of the udder, the spray position being a position relative to the intersection of the two tangents.
 2. The system of claim 1, the spray position is located beneath one or more teats of the dairy livestock.
 3. The system of claim 1, wherein: the camera comprises a three-dimensional camera; and the image signal comprises a three-dimensional video image signal.
 4. The system of claim l, wherein the controller determines positions of each of the hind legs of the dairy livestock by processing the accessed image signal to locate edges in depth, the edges in depth corresponding to the edges of the hind legs of the dairy livestock.
 5. The system of claim 4, wherein the controller determines the position of the udder of the dairy livestock by processing the accessed image signal to trace one or more of the located edges in depth upwardly until they intersect with the udder.
 6. The system of claim 4, wherein: the camera is positioned on the robotic arm; and the controller is further operable to communicate, in response to determining positions of each of the hind legs of the dairy livestock, one or more signals to one or more actuators of the robotic arm, the one or more signals causing the one or more actuators to operate in order to extend the robotic are between the hind legs of the dairy livestock.
 7. A non-transitory computer readable medium having software embodied thereon, the software operable when executed by a processor to: access an image signal generated by a camera, the image signal corresponding to one or more features of a dairy livestock; determine, based on the image signal, positions of each of the hind legs of the dairy livestock; determine, based on the image signal and the determined positions of the hind legs of the dairy livestock, a position of an udder of the dairy livestock; determine a spray position from which a spray tool may apply disinfectant to the teats of the dairy livestock based at least in part upon the determined position of the udder of the dairy livestock, wherein determining the spray position comprises processing the accessed image signal to determine a tangent to the rear of the udder and a tangent to the bottom of the udder, the spray position being a position relative to the intersection of the two tangents; and extend a robotic arm between the hind legs of the dairy livestock based at least in part upon the determined position of the udder of the dairy livestock.
 8. The non-transitory computer readable medium having software of claim 7, wherein the spray position is located beneath one or more teats of the dairy livestock.
 9. The non-transitory computer readable medium having software of claim 7, wherein the image signal comprises a three-dimensional video image signal.
 10. The non-transitory computer readable medium having software of claim 7, wherein determining positions of each of the hind legs of the dairy livestock comprises processing the accessed image signal to locate edges in depth, the edges in depth corresponding to the edges of the hind legs of the dairy livestock.
 11. The non-transitory computer readable medium having software of claim 10, wherein determining the position of the udder of the dairy livestock comprises processing the accessed image signal to trace one or more of the located edges in depth upwardly until they intersect with the udder.
 12. The non-transitory computer readable medium having software of claim 7, wherein the software is further operable when executed to communicate, in response to determining positions of each of the hind legs of the dairy livestock, one or more signals to one or more actuators of the robotic arm, the one or more signals causing the one or more actuators to operate in order to extend the robotic arm between the hind legs of the dairy livestock. 